// Copyright (c) 2025 Bytedance Ltd. and/or its affiliates
// 
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// 
//     http://www.apache.org/licenses/LICENSE-2.0
// 
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

@gap: 1rem;

@color: {
  primary: #4caf50;
  primary-dark: #45a049;
  background: #f5f5f5;
  border: #ddd;
  border-light: lighten(#ddd, 5%);
  border-lighter: lighten(#ddd, 10%);
  border-lightest: lighten(#ddd, 15%);
  text: #333;
  text-light: #555;
  text-lighter: #666;
  white: #fff;
  hover: #f8f9fa;
  star: #ddd;
  shadow: rgba(0, 0, 0, 0.05);
  shadow-dark: rgba(0, 0, 0, 0.5);
  primary-transparent: rgba(76, 175, 80, 0.2);
};

// Common border mixins
.border(@radius, @color) {
  border: 0.1rem solid @color;
  border-radius: @radius;
}

.border-base(@radius) {
  .border(@radius, @color[border]);
}

.border-light(@radius) {
  .border(@radius, @color[border-light]);
}

.border-lighter(@radius) {
  .border(@radius, @color[border-lighter]);
}

.border-lightest(@radius) {
  .border(@radius, @color[border-lightest]);
}

.center-flex() {
  display: flex;
  justify-content: center;
  align-items: center;
}

.text-ellipsis() {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
